www.gusucode.com > matlab编程NSCT分解 图像融合 各个融合指标评价体系 分解源码程序 > matlab编程NSCT分解 图像融合 各个融合指标评价体系 分解源码程序/NSCT/imhist_my.m
function varargout = imhist_my(image) % IMHIST_MY 计算图像矩阵image直方图 % 输出:无 绘制出直方图 % [histv,grayv] histv为每个grayv的个数,grayv为灰度值 % 作者:lskyp 时间:2009.08.17 if isrgb(image) error('图像为RGB图像,不能用该函数处理'); end if isa(image,'uint8') histv = zeros(1,256); grayv = 0:255; elseif isa(image,'uint16') histv = zeros(1,65536); grayv = 0:65535; end for p = 1:size(image,1) for q = 1:size(image,2) histv(image(p,q) + 1) = histv(image(p,q) + 1) + 1; end end if nargout==0 stem(grayv,histv,'Marker','none'); title('直方图'); xlim([0 max(grayv)]); xlabel('灰度值'); ylabel('个数'); else varargout = {histv,grayv}; end